<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>resolve的特殊情况</title>
</head>
<body>
<script>
  /*
  * resolve和reject还是不一样的
  * reject()不管传什么参数都会被catch捕获
  * 但是resolve()如果传递一个reject状态的Promise会直接被catch捕获
  * 所以可以猜想resolve会对接收到的参数进行递归解析
  *
  * */

  new Promise(((resolve, reject) => {
    resolve(new Promise(((resolve1, reject1) => { })))
    // reject(new Promise(((resolve1, reject1) => { reject1(100)})))
  })).then(value => {
    console.log("value",value);
  }).catch(console.log)

  /*
  *
  * 正是因为resolve的这个特性所以可以使用Promise.resolve()来将任意数据Promise化
  * 就算接收一个Promise也没问题
  *
  * */
</script>
</body>
</html>